package com.entrogy.service;

import com.entrogy.bean.Appraisal;
import com.entrogy.bean.Attendance;
import com.entrogy.bean.PassRecordEntity;

import java.util.List;
import java.util.Map;

/**
 * 考勤管理service接口
 * @Author 许红松
 * @date 2019/5/9 0009 上午 11:38
 */
public interface AppraisalService {

    /**
     *  查询是否存在某张表
     * @param table_name
     * @return
     */
    public int selectIstable(String table_name);


    /**
     *  根据school_code 查询dingding E应用配置
     * @param school_code
     * @return
     */
    public int selectDingDingConfig(int school_code);

    /**
     *   查询数据
     * @param map
     * @return
     */
    public List<String> getAppraisalList(Map<String,Object> map);

    /**
     *  批量新增
     * @param map
     * @return
     */
    public  int  addBachAppraisal(Map<String,Object> map);

    /**
     *  查询打卡流水信息
     * @param map
     * @return
     */
    public List<Appraisal>  selectAppraisalByList(Map<String,Object> map);
    /**
     *  查询总数
     *
     * @return
     */
    public  int total(Map<String,Object> map);

    /**
     *  创建下月的考勤表
     * @param
     * @return
     */
    public int createtable();

    /**
     *  钉钉查询打卡流水信息
     * @param map
     * @return
     */
    public List<Appraisal>  getAppraisalByList(Map<String,Object> map);
    /**
     *   根据考勤Id  查询详情
     * @param map
     * @return
     */
    public  Appraisal  selectAppraisalById(Map<String,Object> map);


    /**
     *  批量新增
     * @param map
     * @return
     */
    public  int  addBachAttendance(Map<String,Object> map);

    /**
     *  钉钉查询打卡结果信息
     * @param map
     * @return
     */
    public List<String>  getAttendanceList(Map<String,Object> map);

    /**
     *  钉钉查询打卡结果信息列表
     * @param map
     * @return
     */
    public List<Attendance>  getAttendanceByList(Map<String,Object> map);
    /**
     *  查询总数
     *
     * @return
     */
    public  Integer getTotal(Map<String,Object> map);

    /**
     *   查询考勤月度
     * @param map
     * @return
     */
    // public  List<Map<String,Object>>   getListByAll(Map<String,Object> map);

    /**
     *  获取当天的考勤数据
     * @return
     */
    public  List<PassRecordEntity>   getPassRecordList(Map<String,Object> map);

    /**
     *  根据人员查询他本人当天的考勤时间
     * @param map
     * @return
     */
    public  Map<String,Object>   getshiftBypeople(Map<String,Object> map);

    /**
     *  修改状态
     * @param map
     * @return
     */
    public  int  updateStype1(Map<String,Object> map);

    /**
     *  查询统计所有
     * @param map
     * @return
     */
    public List<Map<String,Object>>   getStatisticsList(Map<String,Object> map);
    /**
     *  查询出勤天数所有
     * @param map
     * @return
     */
    public List<String> getCount1List(Map<String,Object> map);

    /**
     *  钉钉查询打卡结果信息1
     * @param map
     * @return
     */
    public List<Attendance>  getAttendanceList1(Map<String,Object> map);

    /**
     *  钉钉查询打卡结果信息2
     * @param map
     * @return
     */
    public List<String>  getAttendanceList2(Map<String,Object> map);



    /**
     *  创建本月的考勤表
     * @param
     * @return
     */
    public int createtable1();





}
